package main

import (
	"github.com/gin-gonic/gin"
	"go-web/config"
	"go-web/db"
	"go-web/router"
	"log"

	"github.com/sirupsen/logrus"
)

func init() {
	// 初始化配置
	config.InitConfig()

	// 初始化日志
	logrus.SetFormatter(&logrus.TextFormatter{
		FullTimestamp: true,
	})
	logrus.SetLevel(logrus.DebugLevel)

	// 初始化数据库
	db.InitDB()
}

func main() {
	// 设置Gin模式
	gin.SetMode(config.GlobalConfig.App.Mode)

	// 初始化路由
	r := router.SetupRouter()

	// 启动服务器
	log.Printf("Starting server on port %s", config.GlobalConfig.App.Port)
	if err := r.Run(config.GlobalConfig.App.Port); err != nil {
		log.Fatalf("Failed to start server: %v", err)
	}
}
